package br.com.iswe.core.entidades.util;

import java.beans.PropertyDescriptor;
import java.util.List;
import java.util.Locale;

import br.com.iswe.core.entidades.gwt.BeanMap;


public interface ConverterHandler {

	Object convert(Object bean, String prop, Locale locale);

	String getAsString(Object objeto, Locale locale);
	<ENTIDADE> ENTIDADE getAsObject(String valor, Locale locale, PropertyDescriptor descriptor);
	<ENTIDADE> ENTIDADE getAsObject(String valor, Locale locale, Class<ENTIDADE> clazz);
	
	BeanMap getAsMap(Object bean, Locale locale);
	BeanMap getAsMap(Object bean, Locale locale, PropertyAssemblerInfo propertyAssemblerInfo);

	List<String> getPropertyNames(Class<? extends Object> beanClass);

	

}
